package com.zzvcom.doc.util;

public class PinYinUtil {

    /**
     * 逐步修正
     * @param c
     * @return
     */
    public static boolean isPinyinChar(char c) {
     /*   // 1. 基本拉丁字母 ，不适用，英语也是这些字符
        if ((c >= 'a' && c <= 'z') || (c >= 'A' && c <= 'Z')) {
            return true;
        }*/
        // 处理带声调的拉丁字符
        // 这些字符在汉语拼音中表示带声调的字母
        // 2. 带声调的拉丁字符 (Latin Extended-A)
        //Ā ā Ă ă Ą ą Ć ć Ĉ ĉ Ċ ċ Č č Ď ď Đ đ Ē ē Ĕ ĕ Ė ė Ę ę Ě ě
        //Ĝ ĝ Ğ ğ Ġ ġ Ģ ģ Ĥ ĥ Ħ ħ Ĩ ĩ Ī ī Ĭ ĭ Į į İ ı Ĳ ĳ Ĵ ĵ Ķ ķ
        //ĸ Ĺ ĺ Ļ ļ Ľ ľ Ŀ ŀ Ł ł Ń ń Ņ ņ Ň ň ŉ Ŋ ŋ Ō ō Ŏ ŏ Ő ő Œ œ
        //Ŕ ŕ Ŗ ŗ Ř ř Ś ś Ŝ ŝ Ş ş Š š Ţ ţ Ť ť Ŧ ŧ Ũ ũ Ū ū Ŭ ŭ Ů ů
        //Ű ű Ų ų Ŵ ŵ Ŷ ŷ Ÿ Ź ź Ż ż Ž ž ſ
        if (c >= 0x0100 && c <= 0x017F) {
            return true;
        }

        // 3. 带重音符号的字符
        //   处理带重音符号的拉丁字符
        //    这些字符在某些拼音标注系统中可能被使用
        if (c >= 0x00E0 && c <= 0x00FF) {
            return true;
        }

        // 4. 特殊拼音字符
        if (c == 0x0251) {  // ɑ
            return true;
        }

       /* // 5. 注音符号
        if (c >= 0x3105 && c <= 0x312F) {
            return true;
        }*/

        return false;
    }


}
